package com.wash.shoes.entity;

import com.alibaba.fastjson2.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.util.Date;

/**
 * 抖音的退款回掉
 *
 * @TableName os_dy_refund
 */
@ApiModel(value = "抖音的退款回掉")
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("os_dy_refund")
public class DyRefundPo {
    /**
     *
     */
    @ApiModelProperty(value = "id")
    @TableId
    private String id;

    /**
     * 应用的Id
     */
    @ApiModelProperty(value = "应用的Id")
    @JSONField(name = "app_id")
    private String appId;

    /**
     * 用户的Id
     */
    @ApiModelProperty(value = "用户的Id")
    @JSONField(name = "open_id")
    private String openId;

    /**
     * 退款的Id
     */
    @ApiModelProperty(value = "退款的Id")
    @JSONField(name = "refund_id")
    private String refundId;

    /**
     * 订单的Id
     */
    @ApiModelProperty(value = "订单的Id")
    @JSONField(name = "order_id")
    private String orderId;

    /**
     * 订单的Id,dy的订单
     */
    @ApiModelProperty(value = "订单的Id,dy的订单")
    @JSONField(name = "dy_order_id")
    private String dyOrderId;

    /**
     * 订单的Id,用户侧
     */
    @ApiModelProperty(value = "订单的Id,用户侧")
    @JSONField(name = "out_order_no")
    private String outOrderNo;

    /**
     * 退款的code
     */
    @ApiModelProperty(value = "退款的code")
    @JSONField(name = "error_code")
    private String errorCode;

    /**
     * 返回的json数据
     */
    @ApiModelProperty(value = "返回的json数据")
    @JSONField(name = "jsonText")
    private String jsonText;

    /**
     * 退款的json
     */
    @ApiModelProperty(value = "退款的json")
    private String refundText;

    /**
     * 状态0 退款中 1已退款  2退款失败
     */
    @ApiModelProperty(value = "状态0 退款中 1已退款  2退款失败")
    private Integer status;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "扩展字段")
    private String extendInfo;

    @TableField(value = "create_by", fill = FieldFill.INSERT)
    @ApiModelProperty(value = "创建者")
    private String createBy;

    @TableField(value = "create_time", fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty(value = "更新者")
    private String updateBy;

    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
}